package com.heu.blood.analysis.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.heu.blood.analysis.entity.BloodTestTransfusionEntity;
import lombok.Data;
import lombok.ToString;
import lombok.extern.slf4j.Slf4j;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author bearH
 * @date 2024-02-06 22:30
 */
@Data
@Slf4j
@ToString(callSuper = true)
public class BloodTestTransfusionApplicationVo extends BloodTestTransfusionEntity implements Serializable {
    /**
     * 就诊号
     */
    private String visitNumber;

    /**
     * 姓名
     */
    private String name;

    /**
     * 身份证号
     */
    private String idcard;

    /**
     * 性别
     */
    private String gender;

    /**
     * 年龄
     */
    private String age;

    /**
     * 科室
     */
    private String department;

    /**
     * 所在病区
     */
    private String ward;

    /**
     * 床号
     */
    private String bedNumber;

    /**
     * 民族
     */
    private String national;

    /**
     * 临床诊断
     */
    private String clinicalDiagnosis;

    /**
     * 输血目的
     */
    private String transfusionPurpose;

    /**
     * 既往输血史
     */
    private String transfusionHistory;

    /**
     * 孕（次）
     */
    private String pregnancy;

    /**
     * 产（次）
     */
    private String maternity;

    /**
     * 申请类型（手术备血/常规输血/紧急输血/血浆置换）
     */
    private String applicationType;

    /**
     * 申请日期
     */
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date applicationTime;

    /**
     * 采血时间
     */
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date collectTime;

    /**
     * 用血日期（预定输血日期）
     */
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date transfusionTime;

    /**
     * 患者血液样本号
     */
    private String bloodSampleNumber;

    /**
     * ABO血型（申请）
     */
    private String aboBloodType;

    /**
     * rh血型（申请）
     */
    private String rhBloodType;

    /**
     * 申请血液成分(blood_type字典) （预定输血成分）
     */
    private String bloodType;

    /**
     * 申请输血量（预定输血量）
     */
    private BigDecimal applyCount;

    /**
     * 血液单位
     */
    private String measurementUnit;

    /**
     * 申请医师（申请医师签字）
     */
    private String appliedDoctor;

    /**
     * 申请医师工号
     */
    private String appliedDoctorNum;

    /**
     * 是否采集血样本
     */
    private String isCollectBlood;

    /**
     * 收费类别
     */
    private String chargeType;

    /**
     * 医生备注
     */
    private String note;

    /**
     * 手术名称
     */
    private String surgicalName;

    /**
     * 病人类别
     */
    private String patientType;

    /**
     * 加急
     */
    private String isUrgent;



    /**
     * 患者编号
     */
    private String patientId;

    /**
     * 输血同意书是否通过（0否1是）
     */
    private String isAgreement;

    /**
     * 申请状态
     */
    private String state;

    /**
     * 输血申请审核状态（ApplicationStatus）
     */
    private String transfusionStatus;

    /**
     *  申请驳回原因
     */
    private String applicationRejectReason;

    /**
     * 受血者属地（本市/外埠）
     */
    private String territorial;

    /**
     * 血红蛋白
     */
    private String haemoglobin;

    /**
     * HCT
     */
    private String hct;

    /**
     * 血小板
     */
    private String platelet;

    /**
     * ALT
     */
    private String alt;

    /**
     * HBsAg
     */
    private String hbsag;

    /**
     * Anti_HCV
     */
    private String antiHcv;

    /**
     * Anti_HIV1/2
     */
    private String antiHiv;

    /**
     * 梅毒
     */
    private String syphilis;

    /**
     * 主治医生审核签字
     */
    private String attendingSign;


}
